package com.ly.tankgame;

import javax.swing.*;
import java.awt.*;

/**
 * 坦克大站绘图区
 */

public class MyPanel extends JPanel {
    //定义我的坦克
    Hero hero=null;
    public MyPanel(){
        hero=new Hero(100,100);//初始化一个坦克
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);
        g.fillRect(0,0,1000,750);//填充矩形，默认黑色
        //画出坦克-封装方法
        drawTank(hero.getX(),hero.getY(),g,0,0);

    }
    //编写方法，画出坦克

    /**
     *
     * @param x 坦克左上角的x坐标
     * @param y 坦克左上角的y坐标
     * @param g 画笔
     * @param direct 坦克方向(0:表示向上 1：表示向右 2：表示向下 3：表示向左)
     * @param type 坦克类型
     */
    public void drawTank(int x,int y,Graphics g,int direct,int type){
       //根据不同类型坦克，设置不同颜色
        switch (type){
            case 0: //我们的坦克
                g.setColor(Color.cyan);
                break;
            case 1: //敌人的坦克
                g.setColor(Color.yellow);
                break;
        }
        //根据坦克方向，来绘制坦克
        switch (direct){
            case 0://表示向上
                g.fill3DRect(x,y,10,60,false);//左边轮子
                g.fill3DRect(x+30,y,10,60,false);//右边轮子
                g.fill3DRect(x+10,y+10,20,40,false);//中间
                g.fillOval(x+10,y+20,20,20);//盖
                g.drawLine(x+20,y+30,x+20,y);// 炮口
                break;
            case 1:
                break;
            default:
                System.out.println("暂时没有处理");
        }
    }
}
